
تفاوت frontend و backend چیست؟
Frontend و backend دو اصطلاح پرکاربرد در صنعت رایانه هستند. به نوعی ، آنها تبدیل به کلمات زمزمه ای شدند. آنها نوع شغل شما به عنوان یک توسعه دهنده نرم افزار ، فن آوری های استفاده شده و میزان حقوق شما را تعیین می کنند.
بنابراین ، بیایید در مورد تفاوت این دو اصطلاح صحبت کنیم ، اینکه چرا آنها اصالتاً وجود دارند و مسیرهای مختلفی که می توانید در حرفه توسعه نرم افزار خود طی کنید.
ارائه سایت
برای شروع این سفر ، ما باید مفهوم ارائه سایت را درک کنیم. در اصطلاح غیر روحانی ، ارائه سایت به معنای تولید یا ارائه خروجی HTML است. HTML یک زبان نشانه گذاری است که توسعه دهندگان وب از آن برای ایجاد صفحات وب استفاده می کنند. گفته شده است که ارائه سایت می تواند هم در سمت سرور و هم در سمت مشتری رخ دهد ، بنابراین این به چه معناست؟ شایان ذکر است که frontend و مشتری سمت مترادف هستند. این مورد در مورد backend و سمت سرور نیز صادق است.
ارائه در سمت سرور (باطن)
تا مدت ها پیش ، ارائه سمت سرور یا توسعه وب درعوض ، راهی واقعی برای ایجاد وب سایت و برنامه های وب بود. شما از یک صفحه بازدید می کنید ، برای محتوا درخواست می فرستید ، سرور این درخواست را پردازش می کند و پاسخی ایجاد می کند که به مرورگر شما ارسال می شود.
هنگامی که یک سایت سمت سرور را ارائه می دهد ، تمام فرایندهای ایجاد یک صفحه HTML که مرورگر وب شما می تواند درک کند ، در یک سرور از راه دور میزبان وب سایت یا برنامه وب کار می کنند. این شامل پرس و جو از پایگاه داده برای اطلاعات و پردازش هر منطقی است که برنامه وب شما نیاز دارد.
در حالی که سرور از راه دور در محل کار مشغول است ، مرورگر وب شما بیکار است و منتظر است سرور پردازش درخواست و ارسال پاسخ را به پایان برساند. با دریافت پاسخ ، مرورگرهای وب آن را تفسیر کرده و محتوا را بر روی صفحه نمایش می دهند.
رندر سمت مشتری (frontend)
در دوران مدرن تر ، شکل جدیدی از ارائه سایت به نام ارائه در سمت مشتری یا توسعه front-end ظهور کرد.
با ارائه در سمت مشتری ، ارائه محتوا در رایانه شما به جای وب سرور از راه دور با استفاده از زبان واقعی وب ، جاوا اسکریپت انجام می شود. از نظر عملی ، این بدان معنی است که فقط یک سرور برای سرویس دهی به برنامه خام وب مورد نیاز است و مرورگر وظیفه ارائه این برنامه را به شکل نهایی خود ، HTML دارد. این همچنین بدان معنی است که برخی از منطق ایجاد صفحه وب ، به ویژه منطقی که مسئولیت رسیدگی به نحوه ارائه امور به کاربر را بر روی صفحه دارد (به نام منطق ارائه) در سمت مشتری کار می کند.
رندر سمت مشتری با ظهور کتابخانه های جاوا اسکریپت مانند آنگولار ، ری اکت و Vue محبوب شد.
رندر ایزومورفیک
ارائه همگانی ، رندر همگانی تکنیک جدیدی است که در توسعه وب مدرن استفاده می شود. ایده رندر غیر متعارف ارائه یک برنامه وب است که با چارچوب جاوا اسکریپت مانند آنگولار، ری اکت یا View ایجاد شده است ، اولین بار بارگیری یک صفحه و در سمت مشتری ، در سمت سرور است.
برای پیچیدگی بیشتر مسائل ، شکل دیگری از ارائه وجود دارد به نام pre-rendering که محتوا را در زمان کامپایل ارائه می دهد.
مکانی که می تواند یک سایت را ارائه دهد تصمیمی است که اغلب براساس نوع برنامه و اطلاعات جمعیتی برنامه است و از یک تیم به تیم دیگر و یک کسب و کار دیگر متفاوت است.

توسعه جلویی چیست؟
اکنون که انواع مختلف روش های ارائه سایت را درک کردیم ، درک اینکه توسعه front-end هنر ایجاد سایت ها و برنامه های وب است که در سمت مشتری ارائه می شود ، آسان تر است.
فن آوری های مورد استفاده برای توسعه front-end
در حالی که انواع مختلفی از فناوری ها و پشته ها وجود دارد ، بیشتر توسعه دهندگان وب جلو از HTML ، CSS و جاوا اسکریپت ، به طور واقعی بلوک های ساختاری وب و چارچوب های سمت مشتری مانند آنگولار ، ری اکت ، Stencil و Vue استفاده می کنند.
هرچند همه چیز در قسمت جلویی اتفاق نمی افتد . برنامه های ارائه شده توسط مشتری هنوز به سرویس ها و API هایی که در سرورهای از راه دور پشتی یا cloud کار می کنند متکی هستند.
چند شغل جلویی چیست؟
- طراح وب : حدس می زنید یک طراح وب سایت ها را طراحی می کند. هر چند عنوان شغلی طراح وب بسیار گسترده است. یک طراح وب می تواند کسی باشد که سایت ها را در برنامه ای مانند فتوشاپ یا فایروورک طراحی می کند و هرگز کد را لمس نمی کند. اما در یک مکان دیگر ، یک طراح وب می تواند تمام طراحی های طراحی شده را در فتوشاپ انجام دهد و سپس مسئولیت ایجاد تمام HTML و CSS (و حتی گاهی جاوا اسکریپت ) را دارد تا با آن کار کند.
- طراح رابط کاربری (UI) : این اساساً یک طراح بصری است و عموماً روی طراحی متمرکز است. آنها معمولاً در اجرای طراحی نقش ندارند ، اما ممکن است HTML و CSS سبک را بلد باشند تا بتوانند ایده های خود را به طور موثرتری به توسعه دهندگان جلویی منتقل کنند.
- طراحان تجربه کاربر (UX) : طراحان UX در جبهه کار می کنند ، در مورد نحوه استفاده مردم از سایت ها مطالعه می کنند و تحقیق می کنند. سپس ، آنها با آزمایش زیاد تغییرات ایجاد می کنند.
- توسعه دهنده Front-End : آنها همچنین به عنوان طراح Front-End نیز خوانده می شوند و می توانند سایتی را ایجاد کنند که هیچ پیشرفت در زمینه پشتی ایجاد نمی کند. سایتی که آنها بدون توسعه دهنده وب یا استفاده از backend ایجاد خواهند کرد ، یک سایت ثابت است. سایت استاتیک چیزی شبیه به سایت رستوران یا آرایشگاه است. برای ذخیره شدن در پایگاه داده نیازی به هیچ اطلاعاتی نیست. صفحات تقریباً همیشه ثابت خواهند ماند ، مگر اینکه زمان طراحی مجدد فرا رسیده باشد. ممکن است یک توسعه دهنده جلوی دستگاه لازم باشد که در تست آگاهی داشته باشد و همچنین در HTML ، CSS و جاوا اسکریپت مهارت کافی داشته باشد. این فرد ممکن است تجربه ایجاد طرح در یک برنامه طراحی را داشته باشد یا نداشته باشد. نسخه متفاوت این عنوان مهندس جلویی است. افرادی که با زبانهای جلویی خاصی کار می کنند مانند توسعه دهنده جاوا اسکریپت همچنین توسعه دهندگان جلویی محسوب می شوند.
توسعه back-end چیست؟
در حالی که توسعه front-end ایجاد رندر سایت ها و برنامه های وب در سمت مشتری است ، توسعه back-end همه چیز ایجاد این برنامه ها در سمت سرور است. اما کمی بیشتر از این درگیر است. اگرچه گزاره قبلی درست است ، توسعه دهندگان back-end همچنین خدماتی را ایجاد می کنند که منطق تجارت را پردازش می کنند و به منابع دیگری مانند پایگاه داده ، سرورهای پرونده ، سرویس های ابری و سایر موارد دسترسی پیدا می کنند. این سرویس ها ستون فقرات هر برنامه ای هستند و نه تنها توسط برنامه های ارائه دهنده سمت سرور بلکه از طریق برنامه های ارائه دهنده سمت مشتری نیز قابل دسترسی و استفاده هستند.
فن آوری های مورد استفاده برای توسعه back-end
وقتی توسعه دهندگان back-end برنامه هایی را ایجاد می کنند که در سمت سرور ارائه می شوند ، از بلوک های سازنده مشابه توسعه دهندگان front-end استفاده می کنند: HTML ، CSS و جاوا اسکریپت.
توسعه دهندگان Back-end همچنین با پشته های نرم افزاری کار می کنند که شامل سیستم عامل ها ، وب سرورها ، فریم ورک ها ، زبان ها ، API های برنامه نویسی و موارد دیگر است. فریم ورک ها ، زبان ها و API های برنامه نویسی در این پشته ها برای ارائه سایت های سمت سرور و برنامه های وب و ایجاد سرویس هایی که برنامه های دیگر می توانند مصرف کنند ، استفاده می شوند.
پشته های بدنام شامل .NET ، MEAN و LAMP هستند ، اما تعداد دیگری نیز وجود دارد و هر کدام شامل یک زبان برنامه نویسی دلخواه مانند C # ، جاوا اسکریپت ، Java ، Go ، پایتون یا PHP هستند.
توسعه کامل پشته چیست؟
به عنوان یک توسعه دهنده ، لازم نیست فقط به frontend یا backend بسنده کنید. می توانید هر دو را به عنوان یک برنامه نویس پشته کامل انجام دهید. به گفته من ، اینجا سرگرمی آغاز می شود. توسعه دهندگان فول پشته می توانند سایت ها و برنامه های وب ایجاد کنند که هم در سمت مشتری (frontend) و هم سمت server (backend) ارائه شود.
آنها همچنین سرویس ها و مولفه ها ایجاد می کنند که منطق تجاری را دربرمی گیرد ، مشکلات خاص تجاری را حل می کند و به زیرساخت هایی مانند پایگاه داده ، سرورهای پرونده ، سرویس های ابری و موارد دیگر دسترسی پیدا می کند. آنها با پشته کامل کار می کنند و از هر دو جهان بهترین است.
:: برچسبها:
تفاوت frontend و backend ,
طراحی سایت ,
توسعه وبسایت ,
طراحی ظاهر سایت ,
,
:: بازدید از این مطلب : 148
|
امتیاز مطلب : 0
|
تعداد امتیازدهندگان : 0
|
مجموع امتیاز : 0